import { http } from '@/http/http'

// 物资管理-> 库存信息 VO
export interface ResInventoryVO {
  id: number // ID
  qrCode: string // 唯一二维码 (用于扫码录入、查询、追踪)
  materialId: number // 物资ID
  locationId: number // 库位ID
  quantity: number // 实时库存数量
  areaCode: string // 存储区编码 (三维位置-区)
  shelfCode: string // 货架编码 (三维位置-架)
  layerCode: string // 层编码 (三维位置-层)
  positionCode: string // 货位编码 (三维位置-位)
  productionDate: Date // 生产日期
  thresholdValue: number // 库存预警数值 (用于库存预警)
  expiryDate: Date // 过期日期 (用于效期预警)
  inboundTime: Date // 入库时间
  status: string // 库存状态 (AVAILABLE可用, LOCKED锁定, DISPATCHED已调拨, SCRAPPED已报废)
  isPrepositioned: string // 是否为前置物资 (Y/N)
  prepositionedLongitude: number // 前置部署经度 (GIS地图标注)
  prepositionedLatitude: number // 前置部署纬度 (GIS地图标注)
  remark: string // 备注
}

// 物资管理-> 库存信息 API
export const ResInventoryApi = {
  // 查询物资管理-> 库存信息分页
  getResInventoryPage: async (params: any) => {
    return await http.get(`/wms/res-inventory/page`, params)
  },
  // 查询物资管理-> 库存信息列表
  getResInventoryList: async () => {
    return await http.get(`/wms/res-inventory/simple-list`)
  },
  // 查询物资管理-> 库存信息详情
  getResInventory: async (id: number) => {
    return await http.get(`/wms/res-inventory/get?id=${id}`)
  },

  // 新增物资管理-> 库存信息
  createResInventory: async (data: ResInventoryVO) => {
    return await http.post(`/wms/res-inventory/create`, data)
  },

  // 修改物资管理-> 库存信息
  updateResInventory: async (data: ResInventoryVO) => {
    return await http.put(`/wms/res-inventory/update`, data)
  },

  // 删除物资管理-> 库存信息
  deleteResInventory: async (id: number) => {
    return await http.delete(`/wms/res-inventory/delete?id=${id}`)
  },

  // 导出物资管理-> 库存信息 Excel
  // exportResInventory: async (params) => {
  //   return await http.download(`/wms/res-inventory/export-excel`, params)
  // },
}
